﻿using System;

namespace IceDog.DNL.CSharp.DesignPattern.PrototypePattern.WorldShapeClone
{
    /// <summary>
    /// 图形相关的方法
    /// </summary>
    public abstract class Shape:ICloneable
    {
        public string Id { get; set; }
        public string Type { get; set; }
        public abstract void Draw();

        /// <summary>Creates a new object that is a copy of the current instance.</summary>
        /// <returns>A new object that is a copy of this instance.</returns>
        public object Clone()
        {
            return MemberwiseClone();
        }
    }
}
